//声明方法(方法导出)
module.exports = {
	formatTime: formatTime,
	formatLocation: formatLocation,
	dateUtils: dateUtils,
	getNowDate:getNowDate,
	getFormatDate:getFormatDate,
	getNowTime:getNowTime,
	toDecimal:toDecimal,
	downFile:downFile//文件下载
}

function downFile(url,data,title){
	let paramsArray = {};
	//客户ID
	paramsArray.client_id = uni.getStorageSync("userInfo").clientID;
	//下载文件-数据源
	paramsArray.file_data = data;
	//下载文件-标题
	paramsArray.file_title = title;

	requestPost(url,paramsArray,function(res){		
		console.log(res);
	});	
}

//获取当前日期（yyyy-MM-dd）
function getNowDate() {
	var date  = new Date();
	//当前年
	var year = date.getFullYear();
	var month =  date.getMonth() + 1;	
	//当前月
	var month = month <10 ? "0"+ month : month;
	var day = date.getDate();
	//当前日
	day = day <10 ? "0"+ day : day;
	
	//当前时
	var hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
	//当前分
	var minute = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
	//当前秒
	var second = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
	var currentDate = year+'-'+month + '-' + day;

	return currentDate;
}

/* 
时间戳转换方法 (转换成yyyy-MM-dd)  
params date:时间戳数字 
*/
function getFormatDate(date) {
  var date = new Date(date);
  var YY = date.getFullYear() + '-';
  var MM = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
  var DD = (date.getDate() < 10 ? '0' + (date.getDate()) : date.getDate());
  var hh = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
  var mm = (date.getMinutes() < 10 ? '0' + date.getMinutes() : date.getMinutes()) + ':';
  var ss = (date.getSeconds() < 10 ? '0' + date.getSeconds() : date.getSeconds());
  //return YY + MM + DD +" "+hh + mm + ss;
  return YY+MM+DD;
}


//获取当前时间时分秒（HH:mm:ss）
function getNowTime(){
	let date  = new Date();
	//当前时
	this.hour = date.getHours() < 10 ? "0" + date.getHours() : date.getHours();
	//当前分
	this.minute = date.getMinutes() < 10 ? "0" + date.getMinutes() : date.getMinutes();
	//当前秒
	this.second = date.getSeconds() < 10 ? "0" + date.getSeconds() : date.getSeconds();
	let currentTime = this.hour + ':' + this.minute+':'+this.second;
	return currentTime;
}

//保留两位小数
function toDecimal(x) { 
 var f = parseFloat(x); 
 if (isNaN(f)) { 
 return; 
 } 
 f = Math.round(x*100)/100; 
 return f; 
 } 

function formatTime(time) {
	if (typeof time !== 'number' || time < 0) {
		return time
	}

	var hour = parseInt(time / 3600)
	time = time % 3600
	var minute = parseInt(time / 60)
	time = time % 60
	var second = time

	return ([hour, minute, second]).map(function (n) {
		n = n.toString()
		return n[1] ? n : '0' + n
	}).join(':')
}

function formatLocation(longitude, latitude) {
	if (typeof longitude === 'string' && typeof latitude === 'string') {
		longitude = parseFloat(longitude)
		latitude = parseFloat(latitude)
	}

	longitude = longitude.toFixed(2)
	latitude = latitude.toFixed(2)

	return {
		longitude: longitude.toString().split('.'),
		latitude: latitude.toString().split('.')
	}
}
var dateUtils = {
	UNITS: {
		'年': 31557600000,
		'月': 2629800000,
		'天': 86400000,
		'小时': 3600000,
		'分钟': 60000,
		'秒': 1000
	},
	humanize: function (milliseconds) {
		var humanize = '';
		for (var key in this.UNITS) {
			if (milliseconds >= this.UNITS[key]) {
				humanize = Math.floor(milliseconds / this.UNITS[key]) + key + '前';
				break;
			}
		}
		return humanize || '刚刚';
	},
	format: function (dateStr) {
		var date = this.parse(dateStr)
		var diff = Date.now() - date.getTime();
		if (diff < this.UNITS['天']) {
			return this.humanize(diff);
		}
		var _format = function (number) {
			return (number < 10 ? ('0' + number) : number);
		};
		return date.getFullYear() + '/' + _format(date.getMonth() + 1) + '/' + _format(date.getDay()) + '-' +
			_format(date.getHours()) + ':' + _format(date.getMinutes());
	},
	parse: function (str) { //将"yyyy-mm-dd HH:MM:ss"格式的字符串，转化为一个Date对象
		var a = str.split(/[^0-9]/);
		return new Date(a[0], a[1] - 1, a[2], a[3], a[4], a[5]);
	}
};




